package com.xunqi.crm.service.impl;

import com.xunqi.crm.pojo.UserBean;
import com.xunqi.crm.repository.UserBeanRepository;
import com.xunqi.crm.service.UserBeanService;
import org.springframework.cache.annotation.CacheConfig;
import org.springframework.cache.annotation.Cacheable;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;

@Service
// 配置缓存: 当我们需要缓存的地方越来越多,你可以使用
//@CacheConfig(cacheNames = {"myCache"})
// 注解来统一指定 value 的值,这时可省略 value
// 如果你在你的方法依旧写上了 value,那么依然以方法的 value 值为准
public class UserBeanServiceImpl implements UserBeanService {

    @Resource
    private UserBeanRepository userBeanRepository;

    @Cacheable(value = "getUser", keyGenerator = "keyGenerator")
    @Override
    public UserBean getUser(String usrName) {
        return userBeanRepository.findUserByUsrName(usrName);
    }

}
